package com.njym.java.security.common.notify.config;

import org.springframework.boot.context.properties.ConfigurationProperties;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

@ConfigurationProperties(prefix = "notify")
public class NotifyProperties {

    private Sms sms;




    public Sms getSms() {
        return sms;
    }

    public void setSms(Sms sms) {
        this.sms = sms;
    }





    public static class Sms {
        private boolean enable;
        private String active;
        private TencentSms tencentSms;
        private AliyunSms aliyunSms;

        public boolean isEnable() {
            return enable;
        }

        public void setEnable(boolean enable) {
            this.enable = enable;
        }

        public String getActive() {
            return active;
        }

        public void setActive(String active) {
            this.active = active;
        }

        public TencentSms getTencentSms() {
            return tencentSms;
        }

        public void setTencentSms(TencentSms tencentSms) {
            this.tencentSms = tencentSms;
        }

        public AliyunSms getAliyunSms() {
            return aliyunSms;
        }

        public void setAliyunSms(AliyunSms aliyunSms) {
            this.aliyunSms = aliyunSms;
        }

        public static class TencentSms {
            private int appid;
            private String appkey;
            private List<Map<String,String>> template = new ArrayList<>();

            public int getAppid() {
                return appid;
            }

            public void setAppid(int appid) {
                this.appid = appid;
            }

            public String getAppkey() {
                return appkey;
            }

            public void setAppkey(String appkey) {
                this.appkey = appkey;
            }

            public List<Map<String, String>> getTemplate() {
                return template;
            }

            public void setTemplate(List<Map<String, String>> template) {
                this.template = template;
            }
        }

        public static class AliyunSms {
            private String accessKeyId;
            private String accessKeySecret;
            private String signName;
            private List<Map<String,String>> template = new ArrayList<>();

            public String getAccessKeyId() {
                return accessKeyId;
            }

            public void setAccessKeyId(String accessKeyId) {
                this.accessKeyId = accessKeyId;
            }

            public String getAccessKeySecret() {
                return accessKeySecret;
            }

            public void setAccessKeySecret(String accessKeySecret) {
                this.accessKeySecret = accessKeySecret;
            }

            public String getSignName() {
                return signName;
            }

            public void setSignName(String signName) {
                this.signName = signName;
            }

            public List<Map<String, String>> getTemplate() {
                return template;
            }

            public void setTemplate(List<Map<String, String>> template) {
                this.template = template;
            }
        }
    }


}
